package com.lcz.audioplayer;


import com.lcz.audioplayer.bean.AudioBean;

import java.util.ArrayList;

public interface IPlayerClient {

    /**
     * 播放
     */
    void play();

    /**
     * 暂停
     */
    void pause();

    /**
     * 停止播放
     */
    void stop();

    /**
     * 上一首
     */
    void playPre();

    /**
     * 播放下一首
     */
    void playNext();


    int getCurrentIndex();
    ArrayList<AudioBean> getAudioList();


    /**
     * 根据节目的位置进行播放
     *
     * @param index 节目在列表中的位置
     */
    void playByIndex(int index);


    /**
     * 切换播放进度
     *
     * @param progress
     */
    void seekTo(int progress);


    /**
     * 判断播放器是否在播放
     *
     * @return
     */
    boolean isPlaying();

    void setVoiceList(ArrayList<AudioBean> voiceList);
    void registerListener(PlayerManagerCallback callback);
    void unRegisterListener(PlayerManagerCallback callback);
    int getState();
}
